set(ZSERIO_GEN_DIR ${CMAKE_CURRENT_BINARY_DIR}/gen)
set(ZSERIO_GENERATED_SOURCES
    ${ZSERIO_GEN_DIR}/literals/BINARY_NEGATIVE.h
    ${ZSERIO_GEN_DIR}/literals/BINARY_POSITIVE.h
    ${ZSERIO_GEN_DIR}/literals/BINARY_POSITIVE_WITH_CAPITAL_B.h
    ${ZSERIO_GEN_DIR}/literals/BINARY_POSITIVE_WITH_SIGN.h
    ${ZSERIO_GEN_DIR}/literals/BOOLEAN_FALSE.h
    ${ZSERIO_GEN_DIR}/literals/BOOLEAN_TRUE.h
    ${ZSERIO_GEN_DIR}/literals/DECIMAL_NEGATIVE.h
    ${ZSERIO_GEN_DIR}/literals/DECIMAL_POSITIVE.h
    ${ZSERIO_GEN_DIR}/literals/DECIMAL_POSITIVE_WITH_SIGN.h
    ${ZSERIO_GEN_DIR}/literals/DECIMAL_ZERO.h
    ${ZSERIO_GEN_DIR}/literals/FLOAT16.h
    ${ZSERIO_GEN_DIR}/literals/FLOAT32.h
    ${ZSERIO_GEN_DIR}/literals/FLOAT64.h
    ${ZSERIO_GEN_DIR}/literals/HEXADECIMAL_NEGATIVE.h
    ${ZSERIO_GEN_DIR}/literals/HEXADECIMAL_POSITIVE.h
    ${ZSERIO_GEN_DIR}/literals/HEXADECIMAL_POSITIVE_WITH_CAPITAL_X.h
    ${ZSERIO_GEN_DIR}/literals/HEXADECIMAL_POSITIVE_WITH_SIGN.h
    ${ZSERIO_GEN_DIR}/literals/OCTAL_NEGATIVE.h
    ${ZSERIO_GEN_DIR}/literals/OCTAL_POSITIVE.h
    ${ZSERIO_GEN_DIR}/literals/OCTAL_POSITIVE_WITH_SIGN.h
    ${ZSERIO_GEN_DIR}/literals/OCTAL_ZERO.h
    ${ZSERIO_GEN_DIR}/literals/STRING.h
)

zserio_add_library(TARGET literals_zs
    SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/zs
    MAIN_SOURCE literals.zs
    OUT_DIR ${ZSERIO_GEN_DIR}
    OUT_FILES ${ZSERIO_GENERATED_SOURCES}
    ZSERIO_CORE_DIR ${ZSERIO_JAR_DIR}
    ZSERIO_OPTIONS -withoutSourcesAmalgamation -cppStandard ${ZSERIO_CPP_STANDARD}
)

add_test_sources(
    ${ZSERIO_CPP_DIR}/LiteralsTest.cpp
)

add_test_dependencies(literals_zs)
